<template>
  <div>
    <input type="file" @change="handleFileChange" />
    <button @click="printFile">打印文件</button>
  </div>
</template>

<script>
export default {
  data() {
    return {
      selectedFile: null,
    };
  },
  methods: {
    handleFileChange(event) {
      this.selectedFile = event.target.files[0];
    },
    printFile() {
      if (!this.selectedFile) {
        alert('请先选择一个文件！');
        return;
      }
      const fileReader = new FileReader();
      fileReader.onload = (e) => {
        const content = e.target.result;
        // 这里可以根据文件类型进行不同的处理，例如文本文件可以直接打印内容
        if (this.selectedFile.type === 'text/plain') {
          const printContent = document.body.appendChild(document.createElement("pre"));
          printContent.textContent = content;
          window.print(); // 打印内容
          printContent.remove(); // 打印后移除内容
        } else {
          alert('只支持打印文本文件！');
        }
      };
      fileReader.readAsText(this.selectedFile); // 读取文件内容为文本
    }
  }
};
</script>
